home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d2
/
njramd12.arc
/
NJRAMD.DOC
< prev
next >
Wrap
Text File
|
1988-02-26
|
11KB
|
280 lines
Nifty James' Famous (Enhanced) Expanded Memory RAM Disk Drive
Version 1.20 of 16 Oct 1987
(C) Copyright 1987 By Mike Blaszczak. All Rights
Reserved. This is a Shareware Program. A $15 donation
is requested.
THIS PROGRAM MAY NOT BE RESOLD WITHOUT THE PRIOR WRITTEN
CONSENT OF THE AUTHOR. "REPUBLISHING" SHAREWARE PROGRAMS
WITHOUT THE AUTHOR'S KNOWLEDGE IS A CRIME.
Introduction
------------
NJRAMD is a device driver that allows you to partition a
part of your EMS or EEMS memory as an extremely
efficient, extremely fast "RAM disk" drive. Having a
part of your memory configured as a RAM disk will allow
you to store temporary files, intermediate files, and
other information quickly.
NJRAMD is compatible with the Lotus/Intel/Microsoft EMS
standard, as well as the AST/Quadram/Ashton-Tate EEMS
standard. NJRAMD will function equally well with both
systems.
This program will also run with any version of DOS,
staring with version 2.00 or later. I wrote it under
PC-DOS 3.1, and tested it under PC-DOS 2.00 and PC-DOS
2.10. The program should work with MS-DOS, but it
hasn't been "officially" tested.
NJRAMD takes up very little DOS space -- the program,
depending on the configuration that you use, takes
around 720 bytes of DOS memory, regardless of how large
the disk space is made. The smallest configuration of
NJRAMD takes under 700 bytes of DOS memory. Thus, you
can partition a very large RAM disk, and only take up a
very small portion of precious DOS memory.
Use and Installation
--------------------
NJRAMD is installed as a DOS device driver when DOS is
first loaded. Thus, you must specify the device driver
in the CONFIG.SYS file of your boot disk or diskette.
The entry in the CONFIG.SYS file must be anywhere
*after* the specification for the EMS device driver.
For example, the EMS driver that came with my Taiwanese
EMS clone is called INITIAL.SYS. I also use ANSI.SYS,
which I specify in the CONFIG.SYS file, also. Thus, my
CONFIG.SYS file looks like this:
device=\sys\initial.sys
device=\sys\ansi.sys
device=\sys\njramd.sys
| Starting with version 1.20, this version, NJRAMD also
| comes with a file specially prepared for computers with
| extended instruction sets. This includes processors
| like the 80186, 80286, and 80386. You can also make
| use of this version if you have a NEC V-20 or V-30
| installed and running in your system.
| The version is called NJRAMDXP.SYS. "XP" stands for
| "Enhanced Processor". This version of NJRAMD is coded
| to take advantage of the special, extra instructions that
| some CPU's have. It is slightly smaller, and
| considerably faster than the standard version. If this
| version doesn't work on your system, use the regular
| version.
| Even if you only have a stock PC with a NEC V-20, you
| can expect the newver version of NJRAMD to be up to 5%
| faster in benchmark tests. On a real 80286 system, the
| program will run up to 9% faster.
| See the paragraph just before "Technical Information" if
| you have a PC's Limited computer.
You might also have settings for the BUFFERS, FILES,
STACKSPACE, and BREAK settings in your CONFIG.SYS file.
These settings can remain unchanged, as they are
independent of NJRAMD.
You can find more information on the uses of the
CONFIG.SYS file in the DOS manual. The section is
called "Configuring your system".
If you install NJRAMD as shown above, NJRAMD will
default to a disk of 32 EMS Pages, which is 512
kilobytes. (One EMS Page is equal to 16 kilobytes of
storage space. 16 kilobytes stores 16384 bytes, or
characters, of information.) If you would like to have
a larger or smaller RAM disk, you must specify the /P
option on the same line as NJRAMD in your CONFIG.SYS
file. NJRAMD allocates space in one-page increments.
Since each EMS page is 16k bytes long, you can adjust
the size of NJRAMD in 16k increments.
For example, to specify a RAM disk that is 100 pages
long, use this line in your CONFIG.SYS file:
device=njramd.sys /P100
NJRAMD will try to take 100 pages of EMS memory -- this
will give you 1600k of RAM disk space.
Of course, you must have enough free EMS memory at the
time that NJRAMD is loaded to accomodate the requested
size. If there isn't enough memory, NJRAMD will
terminate with an error, and not install itself at all.
If you have selected a size that is too big to fit, you
will see the message
Device not installed.
Requested size too big to fit.
Remember that if you don't tell NJRAMD otherwise, it
will try to create a 512k RAM Disk.
| In version 1.20 of NJRAMD, you can use the /A switch to
| use *all* of the available EMS memory, automatically,
| instead of specifying a /P option. Note, though, that
| the /A option will not leave any memory for other EMS
| programs, such as disk cache programs or for 1-2-3.
If there is no EMS memory available, at all, when NJRAMD
tries to load, you will see this message:
Device not installed.
No free EMM Memory.
If you see this message:
Device not installed.
The EMM is not installed.
the EMM for your system was not present when NJRAMD
loaded. NJRAMD depends on the EMM for access to the EMS
memory. The specification for your EMM driver *must*
appear before the specification for NJRAMD in your
CONFIG.SYS file.
Once you have entered the proper information in your
CONFIG.SYS file, you must reboot your computer so that
the information in the file will take effect. When
NJRAMD installs, it will print a copyright message, and
some status information reguarding the memory that it
has taken, and the amount of memory that is available as
a RAM disk.
If you have any problems installing NJRAMD, please feel
free to write to me. I'd be happy to help!
Clicking
--------
I programmed NJRAMD to click the system's speaker every
time the disk was accessed. Since a RAM disk is silent,
it's often hard to tell when it is working. To
compensate for the fact that there is no "whirring" or
"chirping" going on while the RAM disk is active, the
speaker clicks while the program accesses the memory.
If you find this annoying, you can turn it off by
specifying the "/S" option in the CONFIG.SYS entry. For
example,
device=njramd.sys /P16 /S
would create a 16-page (256k byte) RAM disk that does
not click when it is accessed. If you specify the /S
option, NJRAMD will print the message
Clicking Suppressed.
when it is installed.
| If you have an PC's Limited computer, with a Smart-Vu
| display, try using the program NJRAMDPL.SYS. This
| version is the same as the other versions, but it
| writes to the Smart-Vu display. When NJRAMD is writing,
| the display will show "NJ-W", and when it is reading, it
| will show "NJ-R". Other than the statements that take
| care of the display, this version of the program is
| identical to NJRAMDXP.SYS.
| If you have a PC's Limited and do not want NJRAMD to
| access the Smart-Vu display, use the NJRAMDXP.SYS
| program.
Technical Information
--------- -----------
I have included the assembly language source code in
this .ARC file (or on your white distribution disk) for
your reference. You do not need it to run the program.
If you are a programmer, or simply have an interest in
"what makes it go", you can take a look at the
NJRAMD.ASM file. I've heavily commented it, and
therefore will not describe it in greater detail here.
Shareware
---------
This program is a work of Shareware. If you use the
program, I expect you to end a donation. I'm asking $15
for the program, but, if you would like to send $5 or
$25, that's fine, too.
Registering your copy of NJRAMD will automatically
entitle you to free updates. There currently is one
change planned for later release, and that is making the
drive survive "warm boots". That is, the next version
of NJRAMD will not be erased if you use
<CTRL>+<ALT>+<DEL> to reset your system.
This planned change is unfeasible, however. Since the
EMS manager overwrites the information in the expanded
memory when it is installed, the RAM Drive's contents
will always be erased after a warm boot.
If you would like to write to me, my address is
Mike Blaszczak
112 Verlinden Drive
Monroeville, PA 15146-2041
I'm also available on Participate On The SOURCE as NIFTY
JAMES. My SOURCE ID is BCB922, and you're welcome to
send me SMAIL. I'm also available on the NWI
Conferencing System, as NIFTY JAMES or MIKE B.
Please feel free to send your comments, questions,
suggestions, donations, marriage proposals, and
get-rich-quick schemes.
I'm really interested in hearing any ideas that you
have about NJRAMD, as well as any questions you have
about it. If you run into any problems, please feel
free to call or write. (I don't give my phone number,
but, if you're serious enough, call directory
assistance.)
A Special Note
--------------
This program would not have been possible without the
outstanding generosity and good will of Doctor File
Finder and Bob Brody.
Hats off to a couple of wonderful people!
Doctor File Finder managed to find a bug in the first
version that sometimes caused the program to trash the
files on the disk -- the GetSector procedure wasn't
working properly. The problem has been corrected in
this version, and the program's optimization in the
GetSector proceudre is now fully functional.
Again, the Good Doctor helped me track down the bug that
sometimes caused this device driver to ignore the /Page
option. Thanks, Doc! The fix was made, and this is
now Version 1.15.
| Version 1.20 just let me flex my 80286 knowledge by
| adding the additional instructions. The program also is
| the first version to be developed under Microsoft Macro
| Assembler Version 5.00.